aboutsummaryrefslogtreecommitdiff
path: root/pages/api/v2/etc/recent/[page].js
diff options
context:
space:
mode:
authorFactiven <[email protected]>2023-12-24 13:03:54 +0700
committerFactiven <[email protected]>2023-12-24 13:03:54 +0700
commit50a0f0240d7fef133eb5acc1bea2b1168b08e9db (patch)
tree307e09e505580415a58d64b5fc3580e9235869f1 /pages/api/v2/etc/recent/[page].js
parentUpdate README.md (#104) (diff)
downloadmoopa-50a0f0240d7fef133eb5acc1bea2b1168b08e9db.tar.xz
moopa-50a0f0240d7fef133eb5acc1bea2b1168b08e9db.zip
migrate to typescript
Diffstat (limited to 'pages/api/v2/etc/recent/[page].js')
-rw-r--r--pages/api/v2/etc/recent/[page].js57
1 files changed, 0 insertions, 57 deletions
diff --git a/pages/api/v2/etc/recent/[page].js b/pages/api/v2/etc/recent/[page].js
deleted file mode 100644
index 2ff22ea..0000000
--- a/pages/api/v2/etc/recent/[page].js
+++ /dev/null
@@ -1,57 +0,0 @@
-import { rateLimitStrict, redis } from "@/lib/redis";
-
-let API_URL;
-API_URL = process.env.API_URI || null;
-if (API_URL && API_URL.endsWith("/")) {
- API_URL = API_URL.slice(0, -1);
-}
-
-export default async function handler(req, res) {
- try {
- if (redis) {
- try {
- const ipAddress = req.socket.remoteAddress;
- await rateLimitStrict.consume(ipAddress);
- } catch (error) {
- return res.status(429).json({
- error: `Too Many Requests, retry after ${error.msBeforeNext / 1000}`,
- });
- }
- }
-
- let cache;
-
- if (redis) {
- cache = await redis.get(`recent-episode`);
- }
-
- if (cache) {
- return res.status(200).json({ results: JSON.parse(cache) });
- } else {
- const page = req.query.page || 1;
-
- var hasNextPage = true;
- var datas = [];
-
- async function fetchData(page) {
- const data = await fetch(
- `https://api.anify.tv/recent?type=anime&page=${page}&perPage=45`
- ).then((res) => res.json());
-
- // const filtered = data?.results?.filter((i) => i.type !== "ONA");
- // hasNextPage = data?.hasNextPage;
- datas = data;
- }
-
- await fetchData(page);
-
- if (redis) {
- await redis.set(`recent-episode`, JSON.stringify(datas), "EX", 60 * 60);
- }
-
- return res.status(200).json({ results: datas });
- }
- } catch (error) {
- res.status(500).json({ error });
- }
-}